package state.font;

import particle.core.view.assets.Font;
import state.Graphics;
import state.component.GameScrollBar;

public interface ImageFont {
  public int drawString(Graphics g, String text, int x, int y);

  public int drawString1(Graphics g, String text, int x, int y, int anchors);

  public int drawString2(Graphics g, String text, int color, int x, int y, int anchors);

  public int drawString3(Graphics g, String text, int color, int x, int y, int anchors, GameScrollBar scrollBar);

  public int drawSubstring(Graphics g, String text, int offset, int length, int x, int y);

  public int drawSubstring1(Graphics g, String text, int offset, int length, int x, int y, int anchors);

  public int drawSubstring2(Graphics g, String text, int color, int offset, int length, int x, int y, int anchors);

  public int drawSubstring3(Graphics g, String text, int color, int offset, int length, int x, int y, int anchors, GameScrollBar scrollBar);

  public int stringWidth(String str);

  public int substringWidth(String str, int offset, int length);

  public int charWidth(char c);

  public int drawOneChar1(Graphics g, char c, int x, int y);

  public int drawOneChar(Graphics g, char c, int color, int x, int y);

  public int getHeight();

  public boolean isBold();

  public void setBold(boolean isBold);

  public Font getSystemFont();

  public void detroy();
}
